ZGlmZiAtLWdpdCBhL3N5c3RlbS9saWJyYXJpZXMvSW5wdXQucGhwIGIvc3lzdGVtL2xpYnJhcmllcy9JbnB1dC5waHAKaW5kZXggODAxNzYyMC4uNGZkMjA2MSAxMDA2NDQKLS0tIGEvc3lzdGVtL2xpYnJhcmllcy9JbnB1dC5waHAKKysrIGIvc3lzdGVtL2xpYnJhcmllcy9JbnB1dC5waHAKQEAgLTM2NiwxNCArMzY2LDE0IEBACiAJICogWFNTIENsZWFuCiAJICoKIAkgKiBTYW5pdGl6ZXMgZGF0YSBzbyB0aGF0IENyb3NzIFNpdGUgU2NyaXB0aW5nIEhhY2tzIGNhbiBiZQotCSAqIHByZXZlbnRlZC7KIFRoaXMgZnVuY3Rpb24gZG9lcyBhIGZhaXIgYW1vdW50IG9mIHdvcmsgYnV0CisJICogcHJldmVudGVkLsKgIFRoaXMgZnVuY3Rpb24gZG9lcyBhIGZhaXIgYW1vdW50IG9mIHdvcmsgYnV0CiAJICogaXQgaXMgZXh0cmVtZWx5IHRob3JvdWdoLCBkZXNpZ25lZCB0byBwcmV2ZW50IGV2ZW4gdGhlCi0JICogbW9zdCBvYnNjdXJlIFhTUyBhdHRlbXB0cy7KIE5vdGhpbmcgaXMgZXZlciAxMDAlIGZvb2xwcm9vZiwKKwkgKiBtb3N0IG9ic2N1cmUgWFNTIGF0dGVtcHRzLsKgIE5vdGhpbmcgaXMgZXZlciAxMDAlIGZvb2xwcm9vZiwKIAkgKiBvZiBjb3Vyc2UsIGJ1dCBJIGhhdmVuJ3QgYmVlbiBhYmxlIHRvIGdldCBhbnl0aGluZyBwYXNzZWQKIAkgKiB0aGUgZmlsdGVyLgogCSAqCiAJICogTm90ZTogVGhpcyBmdW5jdGlvbiBzaG91bGQgb25seSBiZSB1c2VkIHRvIGRlYWwgd2l0aCBkYXRhCi0JICogdXBvbiBzdWJtaXNzaW9uLsogSXQncyBub3Qgc29tZXRoaW5nIHRoYXQgc2hvdWxkCisJICogdXBvbiBzdWJtaXNzaW9uLsKgIEl0J3Mgbm90IHNvbWV0aGluZyB0aGF0IHNob3VsZAogCSAqIGJlIHVzZWQgZm9yIGdlbmVyYWwgcnVudGltZSBwcm9jZXNzaW5nLgogCSAqCiAJICogVGhpcyBmdW5jdGlvbiB3YXMgYmFzZWQgaW4gcGFydCBvbiBzb21lIGNvZGUgYW5kIGlkZWFzIEkKQEAgLTQ0Nyw2ICs0NDcsMjQgQEAKIAkJCQkJCQkJCSRzdHIpOwogCQkJfQogCQl9CisJCQorCQkvKgorCQkgKiBOb3QgQWxsb3dlZCBVbmRlciBBbnkgQ29uZGl0aW9ucworCQkgKi8JCisJCSRiYWQgPSBhcnJheSgKKwkJCQkJCSdkb2N1bWVudC5jb29raWUnCT0+ICdbcmVtb3ZlZF0nLAorCQkJCQkJJ2RvY3VtZW50LndyaXRlJwk9PiAnW3JlbW92ZWRdJywKKwkJCQkJCSd3aW5kb3cubG9jYXRpb24nCT0+ICdbcmVtb3ZlZF0nLAorCQkJCQkJImphdmFzY3JpcHRccyo6Igk9PiAnW3JlbW92ZWRdJywKKwkJCQkJCSJSZWRpcmVjdFxzKzMwMiIJPT4gJ1tyZW1vdmVkXScsCisJCQkJCQknPCEtLScJCQkJPT4gJyZsdDshLS0nLAorCQkJCQkJJy0tPicJCQkJPT4gJy0tJmd0OycKKwkJCQkJKTsKKwkKKwkJZm9yZWFjaCAoJGJhZCBhcyAka2V5ID0+ICR2YWwpCisJCXsKKwkJCSRzdHIgPSBwcmVnX3JlcGxhY2UoIiMiLiRrZXkuIiNpIiwgJHZhbCwgJHN0cik7ICAgCisJCX0KIAkKIAkJLyoKIAkJICogQ29udmVydCBhbGwgdGFicyB0byBzcGFjZXMKQEAgLTU0MiwxMSArNTYwLDExIEBACiAJCSAqCiAJCSAqLwkKIAkJJGJhZCA9IGFycmF5KAotCQkJCQkJJ2RvY3VtZW50LmNvb2tpZScJPT4gJycsCi0JCQkJCQknZG9jdW1lbnQud3JpdGUnCT0+ICcnLAotCQkJCQkJJ3dpbmRvdy5sb2NhdGlvbicJPT4gJycsCi0JCQkJCQkiamF2YXNjcmlwdFxzKjoiCT0+ICcnLAotCQkJCQkJIlJlZGlyZWN0XHMrMzAyIgk9PiAnJywKKwkJCQkJCSdkb2N1bWVudC5jb29raWUnCT0+ICdbcmVtb3ZlZF0nLAorCQkJCQkJJ2RvY3VtZW50LndyaXRlJwk9PiAnW3JlbW92ZWRdJywKKwkJCQkJCSd3aW5kb3cubG9jYXRpb24nCT0+ICdbcmVtb3ZlZF0nLAorCQkJCQkJImphdmFzY3JpcHRccyo6Igk9PiAnW3JlbW92ZWRdJywKKwkJCQkJCSJSZWRpcmVjdFxzKzMwMiIJPT4gJ1tyZW1vdmVkXScsCiAJCQkJCQknPCEtLScJCQkJPT4gJyZsdDshLS0nLAogCQkJCQkJJy0tPicJCQkJPT4gJy0tJmd0OycKIAkJCQkJKTsK